1. Field
One embodiment of the invention relates to a motion prediction apparatus and a motion prediction method which predict the motion of an object included in an image.
2. Description of the Related Art
Conventionally, motion prediction apparatuses that predict motions of objects included in images by detecting the motions of the objects as motion vectors have been known. The detection of the motion vectors is performed by using a method in which two consecutive image frames are respectively divided into a plurality of small areas (pixel blocks), searches for a small area having a highest degree of correlation from among the small areas, and represents the amount of deviation of the small area as a motion vector.
As one of the apparatuses for detecting the motion vectors, for example, a motion vector detection apparatus as described below is disclosed in JP-A-2950633. The motion vector detecting apparatus generates a predicted vector that predicts the motion of a target pixel block by using motion vectors of pixel blocks adjacent to the target pixel block and changes the area of a search range for the motion vector based on reliability of the predicted vector.
However, among images of which motion vectors are to be detected, there may be an image such as an image of a blue sky without any cloud of which parts have little differences from one another. According to an embodiment of the present invention, a degree of smoothness means a degree of smallness of a variance in an image. Thus, an image having a high degree of smoothness represents an image having a small variance, and an image having a low degree of smoothness represents an image having a large variance.
Here, as an example, as shown in FIG. 10, a pixel block F1 included in an image frame F whose motion vector is to be detected is assumed to be a small area (for example, a blue sky part) having a high degree of smoothness. In this case, even when the pixel block F1 is a stop area in which there is no motion, if adjacent pixel blocks F2 and F3 also have a high degree of smoothness (for example, a part of the blue sky), there is little difference between the pixel block F1 and any one of the pixel blocks F2 and F3. Accordingly, the detected motion vector P1 or P2 has a large non-uniformity due to a noise or the like.
A case where the motion vector of the pixel block F5 adjacent to the pixel block F4 having large non-uniformity of the motion vector is to be detected will be considered. As an example, it is assumed that a blue sky part that is the same as in the pixel blocks F1 to F3 is displayed in the pixel block F4 and a part of a plane in the blue sky is displayed in the pixel block F5.
In this case, it is assumed that the motion vector of the pixel block F4 has been already detected and an operation for calculating the motion vector of the pixel block F5 is to be performed by using the motion vector of the pixel block F4. Then, since the non-uniformity of the motion vectors of the pixel block F4 is large, the precision of calculation is deteriorated, and thereby the precision of detection of the motion vector becomes low.
In consideration of the above case, a method in which a weighting process is performed such that uniformly small motion vectors are easily selectable may be used. When this weighting process is performed, the non-uniformity of motion vectors detected in the pixel block F4 becomes low.
However, when the weighting process is performed, only small motion vectors are configured to be easily selected. Accordingly, there is a disadvantage that large motion vectors are not selected even in a case where the large motion vectors are to be selected originally.